﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;

namespace SharpShare.Configuration {
    public interface IExtensionConfigurationSection : IEnumerable<ConfigurationElement> {
        ConfigurationElement this[string name] { get; }
        void Remove(ConfigurationElement element);
        void Add(ConfigurationElement element);
        Type ElementType { get; }
    }

    public interface IExtensionConfigurationSection<TElement> : IExtensionConfigurationSection where TElement : ConfigurationElement {
        new TElement this[string name] { get; }
        void Remove(TElement element);
        void Add(TElement  element);
    }
}
